package cn.wolfcode.wolf2w.business.api;

import cn.wolfcode.wolf2w.business.api.domain.StrategyEs;
import cn.wolfcode.wolf2w.business.api.domain.UserEs;
import cn.wolfcode.wolf2w.business.api.factory.RemoteStrategyEsFallbackFactory;
import cn.wolfcode.wolf2w.business.api.factory.RemoteUserEsServiceFallbackFactory;
import cn.wolfcode.wolf2w.common.core.constant.SecurityConstants;
import cn.wolfcode.wolf2w.common.core.constant.ServiceNameConstants;
import cn.wolfcode.wolf2w.common.core.domain.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;

/**
 * @author : 邓风来
 * @date : 2025/9/24 13:56
 */
@FeignClient(contextId = "RemoteUserEsService", name = ServiceNameConstants.SEARCH_SERVICE,
        fallbackFactory = RemoteUserEsServiceFallbackFactory.class)
public interface RemoteUserEsService {
    @PostMapping("/search/initUserEs")
    R<?> initUserEs(@RequestBody UserEs userEs, @RequestHeader(SecurityConstants.INNER) String source);

}
